﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Lead2012.Business
{
    class Preset
    {
        // Variables
        private int _id = 0;
        private string _name;
        private DateTime _dateCreated = DateTime.MinValue;
        private int _agentId;
        private int? _unitId;
        private string delimiter;
        private string textQualifier;
        private bool headerRow;
        private int _mappingId;
        private bool _sendFirstAssignEmail;
        private bool _sendLeadAssignEmail;
        private bool _updateExistingLeads;
        private bool _updateCampaignOnly;
        private int _defaultCampaignId;
        private int _defaultStatusId;
        private int _defaultAgentId;
        private bool _isRepoImport;

        // Variables (Dervived)
        private string _title = "<TITLE HERE>";


        public Preset() { }

        #region Accessors

        public int Id
        {
            get { return _id; }
            set { _id = value; }
        }

        public string Name
        {
            get { return _name; }
            set { _name = value; }
        }

        public string Title
        {
            get { return _title; }
            set { _title = value; }
        }

        public DateTime DateCreated
        {
            get { return _dateCreated; }
            set { _dateCreated = value; }
        }

        //Preset Owner
        public int AgentId
        {
            get { return _agentId; }
            set { _agentId = value; }
        }

        public int? UnitId
        {
            get { return _unitId; }
            set { _unitId = value; }
        }

        public string Delimiter
        {
            get { return delimiter; }
            set { delimiter = value; }
        }

        public string TextQualifier
        {
            get { return textQualifier; }
            set { textQualifier = value; }
        }

        public bool HeaderRow
        {
            get { return headerRow; }
            set { headerRow = value; }
        }

        public int MappingId
        {
            get { return _mappingId; }
            set { _mappingId = value; }
        }

        public bool SendFirstAssignEmail
        {
            get { return _sendFirstAssignEmail; }
            set { _sendFirstAssignEmail = value; }
        }

        public bool SendLeadAssignEmail
        {
            get { return _sendLeadAssignEmail; }
            set { _sendLeadAssignEmail = value; }
        }

        public bool UpdateExistingLeads
        {
            get { return _updateExistingLeads; }
            set { _updateExistingLeads = value; }
        }

        public bool UpdateCampaignOnly
        {
            get { return _updateCampaignOnly; }
            set { _updateCampaignOnly = value; }
        }

        public int DefaultCampaignId
        {
            get { return _defaultCampaignId; }
            set { _defaultCampaignId = value; }
        }

        public int DefaultStatusId
        {
            get { return _defaultStatusId; }
            set { _defaultStatusId = value; }
        }

        public int DefaultAgentId
        {
            get { return _defaultAgentId; }
            set { _defaultAgentId = value; }
        }

        public bool IsRepoImport
        {
            get { return _isRepoImport; }
            set { _isRepoImport = value; }
        }

        public void LoadMapping()
        {

        }
        #endregion
    
    }
}
